﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>设置窗口样式 / 设置窗口扩展样式 - 语法 &amp; 使用 | AutoHotkey v2</title>
<meta name="description" content="The 设置窗口样式 and 设置窗口扩展样式 functions change the style or extended style of the specified window, respectively." />
<meta name="ahk:equiv-v1" content="commands/WinSet.htm#Style" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script>
</head>
<body>

<h1>设置窗口样式 / 设置窗口扩展样式</h1>

<p>分别改变指定窗口的样式和扩展样式.</p>

<pre class="Syntax"><span class="func">设置窗口样式</span> Value <span class="optional">, WinTitle, WinText, ExcludeTitle, ExcludeText</span>
<span class="func">设置窗口扩展样式</span> Value <span class="optional">, WinTitle, WinText, ExcludeTitle, ExcludeText</span></pre>

<h2 id="Parameters">参数</h2>
<dl>
    <dt>Value</dt>
    <dd>
        <p>类型: <a href="../Concepts.htm#numbers">整数</a>或<a href="../Concepts.htm#strings">字符串</a></p>
        <p>传递一个正整数来完全覆盖窗口的样式; 也就是说, 设置它的值为 <em>Value</em>.</p>
        <p>要添加, 删除或切换样式, 请分别传递一个以加号(+), 减号(-) 或插入符号(^) 前缀的数字字符串. 新样式值的计算如下所示(其中 CurrentStyle 可以通过 <a href="WinGetStyle.htm">WinGetStyle/WinGetExStyle</a> 检索):</p>
        <table class="info">
            <tr>
                <th>操作</th>
                <th>前缀</th>
                <th>示例字符串</th>
                <th>公式</th>
            </tr>
            <tr>
                <td>添加</td>
                <td>+</td>
                <td>+0x80</td>
                <td><code>NewStyle := CurrentStyle | Value</code></td>
            </tr>
            <tr>
                <td>删除</td>
                <td>-</td>
                <td>-0x80</td>
                <td><code>NewStyle := CurrentStyle &amp; ~Value</code></td>
            </tr>
            <tr>
                <td>切换</td>
                <td>^</td>
                <td>^0x80</td>
                <td><code>NewStyle := CurrentStyle ^ Value</code></td>
            </tr>
        </table>
        <p>如果 <em>Value</em> 是一个负整数, 它将被视为与对应的数字字符串相同.</p>
        <p>要在表达式中原义使用 + 或 ^ 前缀, 前缀或值必须用引号括起来. 例如: <code>设置窗口样式("+0x80")</code> 或 <code>设置窗口样式("^" StylesToToggle)</code>. 这是因为<a href="../Variables.htm#Expressions">表达式</a> <code><a href="../Variables.htm#unary">+123</a></code> 产生 123(没有前缀), 而 <code>^123</code> 是一个语法错误.</p>
    </dd>
    <dt>WinTitle</dt>
    <dd>
        <p>类型: <a href="../Concepts.htm#strings">字符串</a>, <a href="../Concepts.htm#numbers">整数</a>或<a href="../Objects.htm">对象</a></p>
        <p>识别目标窗口的窗口标题或其他条件. 请参阅 <a href="../misc/WinTitle.htm">WinTitle</a>.</p>
    </dd>
    <dt>WinText</dt>
    <dd>
        <p>类型: <a href="../Concepts.htm#strings">字符串</a></p>
        <p>如果存在, 此参数必须是目标窗口的单个文本元素的子字符串(和内置的 Window Spy 工具显示的一样). 如果 <a href="DetectHiddenText.htm">检测隐藏文本</a> 为 ON, 那么会检测隐藏文本元素.</p>
    </dd>
    <dt>ExcludeTitle</dt>
    <dd>
        <p>类型: <a href="../Concepts.htm#strings">字符串</a></p>
        <p>标题中含有此参数值的窗口将被排除.</p>
    </dd>
    <dt>ExcludeText</dt>
    <dd>
        <p>类型: <a href="../Concepts.htm#strings">字符串</a></p>
        <p>文本中含有此参数值的窗口将被排除.</p>
    </dd>
</dl>

<h2 id="Error_Handling">错误处理</h2>
<p>如果找不到窗口, 或无法应用更改, 则抛出异常.</p>

<h2 id="Remarks">备注</h2>
<p>有关样式的部分列表, 请参阅<a href="../misc/Styles.htm">样式列表</a>.</p>
<p>将某些样式更改应用于可见窗口后, 可能需要使用 <a href="WinRedraw.htm">重绘窗口</a> 重新绘制窗口.</p>
<p>鼠标光标下的窗口的 ID 可以使用 <a href="MouseGetPos.htm">获取鼠标位置</a> 来获取.</p>
<p>窗口标题和文本是区分大小写的. 除非 <a href="DetectHiddenWindows.htm">检测隐藏窗口</a> 被打开, 否则不会检测隐藏窗口.</p>

<h2 id="Related">相关</h2>
<p><a href="WinGetStyle.htm">获取窗口样式 / 获取窗口扩展样式</a>, <a href="ControlSetStyle.htm">设置控件样式 / 设置控件扩展样式</a>, <a href="../misc/Styles.htm">styles table</a>, <a href="Win.htm">Win 函数</a>, <a href="Control.htm">Control 函数</a></p>

<h2 id="Examples">示例</h2>
<div class="ex" id="ExStyle">
<p><a href="#ExStyle">#1</a>: 移除活动窗口的标题栏(WS_CAPTION):</p>
<pre>设置窗口样式 "-0xC00000", "A"</pre>
</div>

<div class="ex" id="ExExStyle">
<p><a href="#ExExStyle">#2</a>: 切换 WS_EX_TOOLWINDOW  属性, 它会从 alt-tab 列表中移除/添加 Notepad 窗口:</p>
<pre class="NoIndent">设置窗口扩展样式 "^0x80", "ahk_class Notepad"</pre>
</div>

</body>
</html>